#ifndef __STM32F103__H__
#define __STM32F103__H__

/* Memory Map */
#define FLASH_BASE				((uint32_t)0x08000000)
#define SRAM_BASE				((uint32_t)0x20000000)
#define PERIPH_BASE				((uint32_t)0x40000000)
#define SCS_BASE				((uint32_t)0xE000E000)

#define APB1PERIPH_BASE				PERIPH_BASE
#define APB2PERIPH_BASE				(PERIPH_BASE + 0x10000)
#define AHBPERIPH_BASE				(PERIPH_BASE + 0x20000)

/* Peripheral Definitions */

/* IO Definitions */
#define __O					volatile
#define __I					volatile
#define __IO					volatile

#ifndef NULL
#define NULL					((void *)0)
#endif

typedef unsigned char uint8_t;
typedef unsigned short uint16_t;
typedef unsigned int uint32_t;

#endif
